package com.crm.user.model;

import java.util.List;

import org.apache.commons.lang.builder.ReflectionToStringBuilder;

import com.alibaba.druid.util.StringUtils;
import com.alibaba.fastjson.annotation.JSONField;
import com.crm.base.model.BaseModel;
//import com.crm.sys.model.Role;

/**
 * 用户信息表<br>
 * uid:用户帐号id-Long<br>
 * name:姓名-String<br>
 * sex:性别（0女1男）-Integer<br>
 * birthday:生日-String<br>
 * cardid:身份证-String<br>
 * address:户籍地址-String<br>
 * school:毕业院校-String<br>
 * education:学历-Integer<br>
 * currentaddr:现所在地-String<br>
 * phone:联系电话-String<br>
 * extension:公司分机-String<br>
 * entrytime:入职时间-String<br>
 * contracttime:合同有效时间-String<br>
 * position:岗位-Integer<br>
 * contactuser:紧急联系人-String<br>
 * cuphone:紧急联系人电话-String<br>
 * state:状态(0 试用  1 正式  2 离职)-Integer<br>
 * reasonsforleaving:离职原因-String<br>
 * deptid:部门ID-Long<br>
 * email:邮箱-String<br>
 * remark:备注-String<br>
 * photo:头像-String<br>
 * isdel:是否删除（0未删除1已删除）-Integer<br>
 * maxcustom:最大简历数 -Integer<br>
 * maxresume:最大简历数 -Integer<br>
 * nickname:昵称 - String<br>
 * -----------------------<br>
 * rid:角色id-Long<br>
 * rname:角色名称-String<br>
 * callinglist:行业列表-list<br>
 * deptname:部门名称-String<br>
 * */
public class UserInfo extends BaseModel {
	
	/**
	 * 无参构造函数
	 * */
	public UserInfo() {}
	
	/**
	 * 带有uid的userinfo对象,是uid不是info的id
	 * */
	public UserInfo(Long uid) {
		this.uid = uid;
	}
	
	private static final long serialVersionUID = -3277274870743579780L;
	
    private String avatar="/images/0.jpg";//头像
    
    private String account;
    
    private String sign;//签名
    
    private String status="online";//
	private Long uid; //账号ID
	@JSONField(name="username")
	private String name; //姓名
	
	private Integer sex; //性别(0 女  1 男)
	
	private String birthday; //生日
	
	private String cardid; //身份证
	
	private String address; //户籍地址
	
	private String school; //毕业院校
	
	private Integer education; //学历
	
	private String currentaddr; //现所在地
	
	private String phone; //联系电话
	
	private String extension;//公司分机
	
	private String entrytime; //入职时间
	
	private String contracttime; //合同有效时间
	
	private Integer position;//岗位
	
	private String contactuser; //紧急联系人
	
	private String cuphone; //紧急联系人电话
	
	private Integer state;  //状态(0 试用  1 正式  2 离职)
	
	private String reasonsforleaving; //离职原因
	
	private Long deptid; //部门ID
	
	private String email; //邮箱
	
	private String remark; //备注
	
	private String photo; //头像
	
	private Integer isdel = 0; //是否删除（0未删除1已删除）
	
	private Integer maxcustom; //最大企业资源数
	
	private Integer maxresume; //最大人才资源数
	
	private Integer nowcustom; //现有企业资源数
	
	private Integer nowresume; //现有人才资源数
	
	private Integer currentEcount;//今日录入企业
	
	private Integer currentPcount;//今日录入人才
	
	private String nickname; //昵称
	
	private Long rid; 
	
	private String rname;//角色名称
	
	private List<Integer> callinglist;//行业列表
	
	private String deptname; //部门名称
 
	private String accessToken;//呼叫中心token
	
	

	public String getAccount() {
		return account;
	}

	public void setAccount(String account) {
		this.account = account;
	}

	public Integer getCurrentEcount() {
		return currentEcount;
	}

	public void setCurrentEcount(Integer currentEcount) {
		this.currentEcount = currentEcount;
	}

	public Integer getCurrentPcount() {
		return currentPcount;
	}

	public void setCurrentPcount(Integer currentPcount) {
		this.currentPcount = currentPcount;
	}

	public String getAccessToken() {
		return accessToken;
	}

	public void setAccessToken(String accessToken) {
		this.accessToken = accessToken;
	}

	public List<Integer> getCallinglist() {
		return callinglist;
	}
	public void setCallinglist(List<Integer> callinglist) {
		this.callinglist = callinglist;
	}
	public void setName(String name){
		this.name=name;
	}
	public String getName(){
		return name;
	}
	public void setSex(Integer sex){
		this.sex=sex;
	}
	public Integer getSex(){
		return sex;
	}
	public void setBirthday(String birthday){
		this.birthday=birthday;
	}
	public String getBirthday(){
		return birthday;
	}
	public void setCardid(String cardid){
		this.cardid=cardid;
	}
	public String getCardid(){
		return cardid;
	}
	public void setAddress(String address){
		this.address=address;
	}
	public String getAddress(){
		return address;
	}
	public void setSchool(String school){
		this.school=school;
	}
	public String getSchool(){
		return school;
	}
	public void setEducation(Integer education){
		this.education=education;
	}
	public Integer getEducation(){
		return education;
	}
	public void setCurrentaddr(String currentaddr){
		this.currentaddr=currentaddr;
	}
	public String getCurrentaddr(){
		return currentaddr;
	}
	public void setPhone(String phone){
		this.phone=phone;
	}
	public String getPhone(){
		return phone;
	}
	public void setExtension(String extension){
		this.extension=extension;
	}
	public String getExtension(){
		return extension;
	}
	public void setEntrytime(String entrytime){
		this.entrytime=entrytime;
	}
	public String getEntrytime(){
		return entrytime;
	}
	public void setContracttime(String contracttime){
		this.contracttime=contracttime;
	}
	public String getContracttime(){
		return contracttime;
	}
	public void setPosition(Integer position){
		this.position=position;
	}
	public Integer getPosition(){
		return position;
	}
	public void setContactuser(String contactuser){
		this.contactuser=contactuser;
	}
	public String getContactuser(){
		return contactuser;
	}
	public void setCuphone(String cuphone){
		this.cuphone=cuphone;
	}
	public String getCuphone(){
		return cuphone;
	}
	public void setState(Integer state){
		this.state=state;
	}
	public Integer getState(){
		return state;
	}
	public void setReasonsforleaving(String reasonsforleaving){
		this.reasonsforleaving=reasonsforleaving;
	}
	public String getReasonsforleaving(){
		return reasonsforleaving;
	}
	public void setDeptid(Long deptid){
		this.deptid=deptid;
	}
	public Long getDeptid(){
		return deptid;
	}
	public void setEmail(String email){
		this.email=email;
	}
	public String getEmail(){
		return email;
	}
	public void setRemark(String remark){
		this.remark=remark;
	}
	public String getRemark(){
		return remark;
	}
	public void setPhoto(String photo){
		this.photo=photo;
	}
	public String getPhoto(){
		return photo;
	}
	public Long getRid() {
		return rid;
	}
	public void setRid(Long rid) {
		this.rid = rid;
	}
	public String getRname() {
		return rname;
	}
	public void setRname(String rname) {
		this.rname = rname;
	}
	public Long getUid() {
		return uid;
	}
	public void setUid(Long uid) {
		this.uid = uid;
	}
	
	public String toString() {
		return ReflectionToStringBuilder.toString(this);
	}

	public Integer getIsdel() {
		return isdel;
	}

	public void setIsdel(Integer isdel) {
		this.isdel = isdel;
	}

	public String getAvatar() {
		return avatar;
	}

	public void setAvatar(String avatar) {
		if(StringUtils.isEmpty(avatar)){
			this.avatar="/images/0.jpg";
		}else{
			this.avatar = avatar;
		}
	}

	public String getSign() {
		return sign;
	}

	public void setSign(String sign) {
		this.sign = sign;
	}

	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}

	public Integer getMaxcustom() {
		return maxcustom;
	}

	public void setMaxcustom(Integer maxcustom) {
		this.maxcustom = maxcustom;
	}

	public Integer getMaxresume() {
		return maxresume;
	}

	public void setMaxresume(Integer maxresume) {
		this.maxresume = maxresume;
	}

	public Integer getNowcustom() {
		return nowcustom;
	}

	public void setNowcustom(Integer nowcustom) {
		this.nowcustom = nowcustom;
	}

	public Integer getNowresume() {
		return nowresume;
	}

	public void setNowresume(Integer nowresume) {
		this.nowresume = nowresume;
	}

	public String getNickname() {
		return nickname;
	}

	public void setNickname(String nickname) {
		this.nickname = nickname;
	}

	public String getDeptname() {
		return deptname;
	}

	public void setDeptname(String deptname) {
		this.deptname = deptname;
	}

	 
	
	
}

